package com.balad.entities;

import java.util.ArrayList;

public class Ville {
	int id_ville;
	String titre;
	String description;
	String CP;
	String Departement;
	double longitude;
	double latitude;
	ArrayList<Media> colMediaPhoto;
	ArrayList<Media> colMedia;
	ArrayList<Itineraire> colItineraire;
	ArrayList<Theme> colTheme;
	ArrayList<Evenement> colEvenement;
	
	boolean is_dataLocal;
	int numVersion;
	int numDerniereVersionDisponible;
	int tailleMaj;

	public Ville() {
		this.colMediaPhoto = new ArrayList<Media>();
		this.colMedia = new ArrayList<Media>();
		this.colItineraire = new ArrayList<Itineraire>();
		this.colTheme = new ArrayList<Theme>();
		this.colEvenement = new ArrayList<Evenement>();
	}

	public int getId_ville() {
		return id_ville;
	}

	public void setId_ville(int id_ville) {
		this.id_ville = id_ville;
	}

	public String getTitre() {
		return titre;
	}

	public void setTitre(String titre) {
		this.titre = titre;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getCP() {
		return CP;
	}

	public void setCP(String CP) {
		this.CP = CP;
	}
	
	public String getDepartement() {
		return Departement;
	}

	public void setDepartement(String departement) {
		this.Departement = departement;
	}

	public double getLongitude() {
		return longitude;
	}

	public void setLongitude(double longitude) {
		this.longitude = longitude;
	}

	public double getLatitude() {
		return latitude;
	}

	public void setLatitude(double latitude) {
		this.latitude = latitude;
	}

	public ArrayList<Media> getColMediaPhoto() {
		return this.colMediaPhoto;
	}
	
	public Media getMediaPhoto(int i) {
		return this.colMediaPhoto.get(i);
	}
	
	public void addMediaPhoto(Media mediaPhoto) {
		this.colMediaPhoto.add(mediaPhoto);
	}
	
	public int getColMediaPhotoSize (){
		return this.colMediaPhoto.size();
	}

	public Media getMedia(int i) {
		return this.colMedia.get(i);
	}

	public void addMedia(Media media) {
		this.colMedia.add(media);
	}
	
	public int getColMediaSize (){
		return this.colMedia.size();
	}

	public Itineraire getItineraire(int i) {
		return this.colItineraire.get(i);
	}

	public void addItineraire(Itineraire itineraire) {
		this.colItineraire.add(itineraire);
	}
	
	public int getColItineraireSize (){
		return this.colItineraire.size();
	}
	
	public String[] getListeItineraires(){
		String [] listeItineraire = new String[colItineraire.size()];
		
		for (int i = 0; i < colItineraire.size(); i++){
			listeItineraire[i] = colItineraire.get(i).getTitre();
		}
		
		return listeItineraire;
	}

	public Theme getTheme(int i) {
		return this.colTheme.get(i);
	}

	public void addTheme(Theme theme) {
		this.colTheme.add(theme);
	}
	
	public int getColThemeSize (){
		return this.colTheme.size();
	}

	public String[] getListeThemes(){
		String [] listeTheme = new String[colTheme.size()];
		
		for (int i = 0; i < colTheme.size(); i++){
			listeTheme[i] = colTheme.get(i).getTitre();
		}
		
		return listeTheme;
	}
	
	public Evenement getEvenement(int i) {
		return this.colEvenement.get(i);
	}

	public void addEvenement(Evenement evenement) {
		this.colEvenement.add(evenement);
	}
	
	public int getColEvenementSize (){
		return this.colEvenement.size();
	}
	
	public String[] getListeEvenements(){
		String [] listeEvenement = new String[colEvenement.size()];
		
		for (int i = 0; i < colEvenement.size(); i++){
			listeEvenement[i] = colEvenement.get(i).getTitre();
		}
		
		return listeEvenement;
	}
	
	public boolean isIs_dataLocal() {
		return is_dataLocal;
	}

	public void setIs_dataLocal(boolean is_dataLocal) {
		this.is_dataLocal = is_dataLocal;
	}

	public int getNumVersion() {
		return numVersion;
	}

	public void setNumVersion(int numVersion) {
		this.numVersion = numVersion;
	}

	public int getNumDerniereVersionDisponible() {
		return numDerniereVersionDisponible;
	}

	public void setNumDerniereVersionDisponible(int numDerniereVersionDisponible) {
		this.numDerniereVersionDisponible = numDerniereVersionDisponible;
	}

	public int getTailleMaj() {
		return tailleMaj;
	}

	public void setTailleMaj(int tailleMaj) {
		this.tailleMaj = tailleMaj;
	}
	
	
}
